/*
 *  Copyright 2002 by Texas Instruments Incorporated.
 *  All rights reserved. Property of Texas Instruments Incorporated.
 *  Restricted rights to use, duplicate or disclose this code are
 *  granted through contract.
 *  
 */
/*
 *  ======== cellrotate.h ========
 */

#ifndef CELLROTATE_
#define CELLROTATE_

#include <icell.h>

#include "irotate.h"

#ifdef __cplusplus
extern "C" {
#endif

// v-table for this cell 
extern ICELL_Fxns ROTATE_CELLFXNS;

// v-table for this cell's algorithm
extern far IROTATE_Fxns ROTATE_IROTATE;

/*
 *  ======== ROTATE_cellExecute ========
 *  Function used to execute the algorithm corresponding to the cell 
 */
Bool ROTATE_cellExecute( ICELL_Handle handle, Arg arg );

/* 
 * ======== ROTATE cell environment ========
 */
typedef struct ROTATE_Env {
    double ang;   
    Char *intYBuf;
    Char *intCrBuf;
    Char *intCbBuf;    
    Uns   yBufSize;
    Uns   crBufSize;
    Uns   cbBufSize;
    Uns   numBlocks;
    Int	  linePitch;
} ROTATE_Env;

#ifdef __cplusplus
}
#endif // extern "C" 

#endif // CELLROTATE_


